Porting the JMTk memory management toolkit
نویسنده
چکیده
JMTk is a memory management toolkit written in Java, originally for the JikesRVM Java Virtual Machine. JMTk provides reusable components for the development of allocation and garbage collection algorithms, an efficient implementation of a rapidly growing number of memory management schemes, and is an important enabler for memory management research. A portable version of JMTk will allow the growing body of memory management research done using it to be repeated in different language environments, and to study the different performance characteristics of algorithms across programming languages without the variation in implementation technique that clouds such issues today. This paper describes the process of porting JMTk for use in C/C++ based language runtimes. The portable system uses the gcj ahead-of-time Java compiler and a source transformation technique to produce a version of JMTk that can perform memory management for traditionally compiled systems. It is currently running in a testbed environment, where it provides a comparison between accurate and conservative garbage collection techniques. Incorporation into a Haskell and C# language runtime are in progress. The source transformation tool is currently in use by a team of researchers integrating JMTk into the OVM Java Virtual Machine. This paper describes the architecture and construction of the ported system, the source code transformation process used, and provides the performance results obtained so far.
منابع مشابه
JMTk: A Portable Memory Management Toolkit
JMTk is a memory management toolkit written in Java for the JikesRVM Java Virtual Machine. JMTk provides reusable components for the development of allocation and garbage collection algorithms, and an efficient implementation of a rapidly growing number of memory management schemes, and is a significant enabler for memory management research. A portable version of JMTk would allow the growing b...
متن کاملAn Investigation into Automatic Dynamic Memory Management Strategies using Compacting Collection
This paper describes the design, implementation and performance characteristics of several compacting collectors in the Java Memorymanagement Toolkit (JMTk). Compacting collectors are an important class of collectors used in several production runtimes, including Microsoft’s Common Language Runtime and IBM’s Java Runtime Environment. The development of a strategy using compaction makes an impor...
متن کاملOil and Water? High Performance Garbage Collection in Java with JMTk
Increasingly popular languages such as Java and C# require efficient and flexible garbage collection. This paper presents the design, implementation, and evaluation of JMTk, a Java Memory Management Toolkit in Java. We show a software engineering success story with an efficient, composable, extensible, and portable framework for quickly building and evaluating collectors. JMTk attains its modul...
متن کاملIdioms in Ovm
The need to express important non.Java behaviors confronts the Ovm virtual machine framework no less than any other VM-in-Java project such as JikesRVM[1].2 Any such project needs mechanisms for the purpose, but different choices in the VM design affect the shape those mechanisms can take. In exploring how a component that makes nontrivial use of such mechanisms-the JMTk memory management toolk...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2003